Printing device, control system, and control method of a control system

ABSTRACT

A printer  11  can connect to a tablet device  10  that generates and transmits data using a browser function; has a communication unit  20   b  that receives data from the tablet device  10  on either a first logical communication channel K 1  or a second logical communication channel K 2  and processes the received data as required according to the communication channel; and has a print unit control unit  20   a  that prints based on data received by the communication unit  20   b.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority under 35 U.S.C. §119 on Japan PatentApplication No. 2012-173750, filed Aug. 6, 2012. The content of theabove-identified application is incorporated by reference herein.

BACKGROUND

1. Technical Field

The present disclosure relates to a printing device that prints, acontrol system including the printing device and a control deviceconnected to the printing device, and a control method of the controlsystem.

2. Related Art

A control system (POS system) that has a printing device (POS device)and a control device (POS controller) connected to the printing device,and executes processes including recording images through thecooperation of the printing device and control device, is known from theliterature. See, for example, Japanese Unexamined Patent Appl. Pub.JP-A-H05-73769.

The control system disclosed in JP-A-H05-73769 anticipates a dedicatedapplication for controlling the printing device not being installed onthe control device, and the control device controlling the printingdevice by using a browser function to appropriately access a specificserver.

The efficiency of this printing process can be improved in this controlsystem and the value of the system can be improved if the printingdevice can execute a process appropriate to the type of print data usinga simple means.

SUMMARY

A printing device according to one aspect of the disclosure includes acommunication unit that has a first channel that executes a data processand a second channel different from the first channel, and communicatesprint data on the first channel or the second channel; and a print unitthat prints based on the print data communicated on the first channel orthe second channel of the communication unit.

In a printing device according to another aspect of the disclosure, thedata process executed on the first channel is a decryption process thatdecrypts the encrypted print data; and the communication unitcommunicates the print data on the first channel when the received printdata is encrypted and decrypts the encrypted data.

Another aspect of the disclosure is a control system including: acontrol device having a browser execution unit that runs a web browser,and transmitting print data output by the browser execution unit on afirst communication channel or a second communication channel; and aprinting device having a communication unit that receives the print datatransmitted by the control device on the first communication channel orsecond communication channel, and executes a process appropriate to thefirst communication channel or second communication channel, and a printunit that prints based on the print data received by the communicationunit.

The control device encrypts the print data and transmits the encryptedprint data on the first communication channel; and the printing devicedecrypts the print data transmitted on the first communication channel.

In a control system according to another aspect of the disclosure, thecontrol device and the printing device store encryption informationrelated to encrypting the print data; the control device encrypts theprint data based on the stored encryption information and transmits theencrypted print data on the first communication channel; and theprinting device decrypts the print data transmitted on the firstcommunication channel based on the stored encryption information.

In a control system according to another aspect of the disclosure, theprint unit of the printing device converts the decrypted print data to acontrol command that controls the print unit, and prints based on theconverted control command.

Another aspect of the disclosure is a control method of a controlsystem, the control method including steps of: a control devicetransmitting print data to a printing device on a first communicationchannel that performs a data process on the print data or a secondcommunication channel that performs a data process different from thedata process performed on the first communication channel; and theprinting device printing based on the print data transmitted on thefirst communication channel or the second communication channel.

Another aspect of the disclosure is a program that causes a printingdevice to receive print data over a first communication channel thatprocesses the received print data or a second communication channeldifferent from the first communication channel, and to print based onthe print data received over the first communication channel or thesecond communication channel.

Another aspect of the disclosure is a method of controlling a controlsystem having a printing device and a control device that cancommunicate with the printing device, wherein the control devicetransmits print data output by a browser execution unit that runs a webbrowser through a first communication channel or a second communicationchannel, and the printing device receives the print data sent by thecontrol device through the first communication channel or secondcommunication channel, processes the data as required according to thecommunication channel that was used, and prints based on the receivedprint data.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing the configuration of a control systemaccording to a first embodiment of the disclosure.

FIG. 2 is a block diagram showing the functional configuration of thecontrol system.

FIG. 3 shows an example of a window displayed on a tablet device.

FIG. 4 is a flow chart of the operation of the control system.

FIG. 5 is a block diagram showing the function configuration of mainparts of the control system.

FIG. 6 is a flow chart of the operation of the control system.

FIG. 7 is a block diagram showing main parts of a printer according to asecond embodiment of the disclosure.

DESCRIPTION OF EMBODIMENTS

A preferred embodiment of the present disclosure is described below withreference to the accompanying figures.

Embodiment 1

FIG. 1 is a block diagram showing the configuration of a control system1 according to a preferred embodiment of the disclosure. FIG. 2 is ablock diagram showing the functional configuration of a tablet device10, printer 11, and POS (point-of-sale) server 17 in the control system1.

The control system 1 is an example of a POS system used in a retailstore in a shopping center or department store, or in other types ofbusinesses. The main functions of the control system 1 are, for example,managing product sales, product inventory, and sales trends in thestore, processing sale transactions at checkout counters L in the storeaccording to the products purchased by a customer, and producingreceipts based on the payment received from the customer.

Multiple checkout counters L where sale transactions are processed arelocated in a store where the control system 1 shown in FIG. 1 is used,and a tablet device 10 (control device), and a printer 11 (printingdevice) connected to the tablet device 10, are installed at eachcheckout counter L. The tablet device 10 and printer 11 are connected sothat they can communicate through a communication line 5. Thecommunication line 5 in this embodiment is a wired or wirelesscommunication channel conforming to the Ethernet (R) standard, but isnot so limited if data can be communicated between devices connected tothe communication line 5.

The tablet device 10 is a tablet computer. As shown in FIG. 3 anddescribed below, the tablet device 10 in this embodiment has a touchpanel 10 a covering substantially the entire front surface.

The touch panel 10 a includes a touch sensor 10 c that detects touchoperations layered over and formed in unison with a display panel 10 bas a display screen. Because the tablet device 10 operates by detectinguser touches with the touch sensor 10 c, there is no need to connect anexternal keyboard or display panel to the tablet device 10.

The printer 11 may be a thermal printer that prints on thermal rollpaper, or a dot impact printer, for example. The printer 11 produces areceipt based on data input from the tablet device 10.

Connected to the printer 11 are external devices such as a barcodescanner 12 for reading barcodes on products or product packaging, a cardreader 13 for reading credit cards or preferred customer cards, a cashdrawer 14 for holding cash, checks, or other payment instruments, and acustomer display 15 for displaying transaction data for the customer.The card reader 13 could be used to read magnetic information recordedon a magnetic stripe card, or to read and write information to an ICcard.

The barcode scanner 12 connects to a printer 11 by short-range wirelesscommunication conforming to the Bluetooth (R) standard. The card reader13 connects to the printer 11 by a wired communication standard such asUSB. The cash drawer 14 and customer display 15 connect to the printer11 by wired communication standards, such as RS-232C and USB,respectively, in this embodiment. The barcode scanner 12, card reader13, cash drawer 14, and customer display 15 respectively exchange dataand signals with the printer 11 according to predetermined communicationprotocols.

The printer 11 includes a printer-side control unit 20, print unit 21,wireless device communication unit 22, wired device communication unit24, and printer interface 23.

The printer-side control unit 20 controls various parts of the printer11, and includes a CPU, RAM, ROM, and other peripheral circuits notshown. Programs installed to the printer 11 include a program forcontrolling the print unit 21, and a program for communicating with thetablet device 10 according to a specific protocol. The printer-sidecontrol unit 20 includes a print unit control unit 20 a that controlsthe print unit, and a communication unit 20 b that executes thecommunication program and communicates with the tablet device 10.

The print unit 21 prints an image on the roll paper and then cuts theroll paper, producing a receipt. The print unit 21 includes a printmechanism including a control circuit that controls the printingoperation, a conveyance mechanism that conveys the roll paper, and arecording head, and prints text and images on roll paper, and a papercutter mechanism that cuts the roll paper. In this embodiment the printunit control unit 20 a and the print unit 21 work together and functionas a print unit.

The wireless device communication unit 22 communicates by Bluetoothshort-range wireless communication with the barcode scanner 12, andincludes a link manager, link controller, high frequency circuit, andantenna.

The device communication control unit 20 c reads and runs a BluetoothDriver Stack to control Bluetooth hardware. The device communicationcontrol unit 20 c controls the wireless device communication unit 22 andcommunicates with the barcode scanner 12 by short-range wirelesscommunication.

Of the input devices, the wired device communication unit 24communicates with at least the card reader 13 and customer display 15 bya specific communication protocol. The wired device communication unit24 includes a network interface card connected to a physical port. Thewired device communication unit 24 communicates data and signals withthe card reader 13 and customer display 15 as controlled by the devicecommunication control unit 20 c of the printer-side control unit 20.

The printer interface 23 connects to the communication line 5 (FIG. 1),and exchanges data with the tablet device 10 as controlled by theprinter-side control unit 20.

The tablet device 10 includes a tablet control unit 26, tablet interface27, display control unit 28, I/O unit 29, and touch panel 10 a.

The touch panel 10 a includes a display panel 10 b on the front side ofthe tablet device 10 as shown in FIG. 3, and a touch sensor 10 cdisposed in unison with the display panel 10 b. The display panel 10 bis a flat panel display such as an LCD panel, OLED panel, ore-paper, andis driven by the display control unit 28.

The touch sensor 10 c is on the surface of the tablet device 10. Thesurface of the touch sensor 10 c may be covered with glass or a plasticsheet. The touch sensor 10 c may be a capacitive or resistive sensor,detects touches by the user's finger or a stylus, and outputs a signalindicating the position where the operation was detected to an I/O unit29.

The display control unit 28 drives the display panel 10 b based ondisplay data input from the browser execution unit 26 a, and displays animage including text or graphic on the display panel 10 b.

The I/O unit 29 detects touch operations on the touch panel 10 a basedon signals output by the touch sensor 10 c. When a touch operation isdetected, the I/O unit 29 generates coordinate data identifying thecoordinates of the position on the display panel 10 b that was touched,and outputs to the browser execution unit 26 a.

The tablet control unit 26 controls various parts of the tablet device10, and includes a CPU, RAM, ROM, and other peripheral circuits notshown. The tablet control unit 26 includes a browser execution unit 26 athat renders functions of a common web browser by running a browserprogram. The browser execution unit 26 a functions as a web browser byexecuting a browser program.

Through a function of the web browser, the browser execution unit 26 adownloads a web page written in a scripting language or markup languagesuch as HTML from the POS server 17. Data for the downloaded web page isstored, for example, in RAM not shown. Using a function of the webbrowser, the browser execution unit 26 a reads the data for thedownloaded web page, and generates and outputs display data fordisplaying the web page to the display control unit 28. The browserexecution unit 26 a executes processes independently or in conjunctionwith the application execution unit 30 a of the POS server 17 by meansof a function of a script embedded in the web page.

When a touch operation on the touch sensor 10 c is detected by the I/Ounit 29, the browser execution unit 26 a determines the input contentbased on the coordinate data input from the I/O unit 29 according to thetouch operation, and the display data output to the display control unit28. Based on the identified input content, the browser execution unit 26a appropriately executes a process by a function of the script, andsends data indicating the identified input content to the POS server 17.The application execution unit 30 a executes processes based on theinput data. The browser execution unit 26 a receives data indicating theresult of the application execution unit 30 a executing the webapplication program from the POS server 17, and generates and outputsdisplay data reflecting the received data to the display control unit28.

The tablet interface 27 communicates with the printer 11 and POS server17 according to a specific communication protocol as controlled by thetablet control unit 26. The tablet device 10 could communicate with theprinter 11 and POS server 17 through a wired connection, butcommunicating through a wireless connection is preferable in order toeffectively utilize the mobility of the tablet device 10.

The POS server 17 has a database storing product information, a databasefor managing sales, and a database for managing product inventory, anduses these databases to manage the control system 1.

The POS server 17 includes a server-side control unit 30, server-sidestorage unit 31, and server interface 32.

The server-side control unit 30 controls various parts of the POS server17, and includes a CPU, RAM, ROM, and other peripheral circuits. Theserver-side storage unit 31 is a hard disk, EEPROM, or other nonvolatilememory device, and stores data rewritably. The server interface 32communicates with the tablet device 10 according to a specificcommunication protocol as controlled by the server-side control unit 30.

A web application 35 is stored so that it can be loaded from theserver-side storage unit 31. The application execution unit 30 a of theserver-side control unit 30 is a function block that executes the webapplication 35.

The web application 35 is a program that executes processes required forthe control system 1 to operate as a POS system.

The application execution unit 30 a generates or reads from theserver-side storage unit 31 data for the web page requested by thetablet device 10, and sends the data to the tablet device 10. When datarequesting executing the web application 35 and transaction process datato be processed by the web application 35 are sent from the tabletdevice 10, the application execution unit 30 a receives the data throughthe server interface 32. The application execution unit 30 a executesthe transaction process based on the data from the tablet device 10 byrunning the web application 35, and sends the result of the transactionprocess to the tablet device 10.

The basic operation of the components of this control system 1 whenexecuting a transaction process is described next.

The tablet device 10 executes the following process before thetransaction process is performed.

The cash register operator or other person first starts the browser ofthe tablet device 10 and displays a dedicated user interface UI on thetouch panel 10 a. The browser execution unit 26 a of the tablet controlunit 26 then accesses a specific address on the POS server 17, acquiresan HTML file or other screen drawing file, and displays the dedicateduser interface UI based on the acquired file. A program with a functionfor executing a transaction process in conjunction with the applicationexecution unit 30 a of the POS server 17 is embedded in this screendrawing file using a specific scripting language.

FIG. 3 shows an example of the dedicated user interface UI displayed onthe touch panel 10 a.

A display list area 39 for displaying the name, price, and quantity ofthe products purchased by the customer is presented in the top left partof the dedicated user interface UI shown in FIG. 3. Amount fields 40 fordisplaying and inputting the total of the products purchased by thecustomer, the amount of money received from the customer for thetransaction, and the amount of change due to the customer, is presentedon the right beside the display list area 39.

Below the display list area 39 is a barcode data field 41 where theinformation represented by the barcode that is read with the barcodescanner 12 (“barcode information”) is input and displayed. The barcodeinformation is basically identification information assigned to eachproduct type.

Below the barcode data field 41 is a customer number field 42 where thecustomer number acquired by reading a frequent customer card, forexample, with the card reader 13 is input and displayed.

A virtual keypad 43 is displayed on the right beside the barcode datafield 41 and customer number field 42. Information can be entered usingthis virtual keypad 43 to the various fields displayed in the dedicateduser interface UI, and the virtual keypad 43 has all keys required fordata entry.

An address field 44 where the accessed address is displayed is presentedat the top of the dedicated user interface UI.

The basic operation performed when the devices of the control system 1described above process a transaction is described next with referenceto the flow chart in FIG. 4 using a transaction in which a customerpurchases a single product as an example. In FIG. 4 the left column Ashows the operation of the printer 11, the middle column B shows theoperation of the tablet device 10, and the right column C shows theoperation of the POS server 17.

At the checkout counter L the operator first scans the barcode of theone product using the barcode scanner 12 (step SX1).

The device communication control unit 20 c of the printer-side controlunit 20 thus acquires the data captured by the barcode scanner 12through the wireless device communication unit 22 (step SA1). The devicecommunication control unit 20 c then generates data representing thebarcode information based on the acquired barcode data, and outputs thedata representing the barcode information to the communication unit 20 b(step SA2). Following the specific protocol, the communication unit 20 bsends the data representing the barcode information to the browserexecution unit 26 a of the tablet device 10 (step SA3).

When the data representing the barcode information is input, the browserexecution unit 26 a of the tablet control unit 26 of the tablet device10 displays the barcode information in the barcode data field 41 using afunction of a program (“dedicated script”) embedded in the HTML file forthe dedicated user interface UI (step SB1). Next, using a function ofthe dedicated script, the browser execution unit 26 a communicates withthe application execution unit 30 a of the POS server 17 and requeststhe name and price of the product identified by the barcode information(step SB2). Through a function of the web application 35, theapplication execution unit 30 a accesses the appropriate database basedon the query to retrieve the required information, and outputs theacquired information to the browser execution unit 26 a of the tabletdevice 10 (step SC1).

Through a function of the dedicated script, the browser execution unit26 a of the tablet device 10 displays the name, price, and quantity ofthe product selected by the customer in the display list area 39, anddisplays the total of the products selected by the customer in theappropriate amount field 40 (step SB3).

When the operator then performs an operation finalizing the products tobe processed in the transaction using the virtual keypad 43, receivespayment from the customer, and issues change, the browser execution unit26 a communicates appropriately with the application execution unit 30 athrough a function of the dedicated script, and displays the appropriateinformation in the corresponding amount fields 40 (step SB4).

Next, through a function of the dedicated script, the browser executionunit 26 a generates an XML document (print data) containing informationrelated to the receipt to be produced by the print unit 21 (step SB5).This XML document contains the information required to produce thereceipt, including text and graphic information to be printed on thereceipt, in a specific format.

The browser execution unit 26 a then sends the generated XML documentusing a method described below to the communication unit 20 b of theprinter 11 according to a specific protocol (step SB6).

The communication unit 20 b of the printer 11 receives the XML document(step SA4) using the method described below, and outputs to the printunit control unit 20 a (step SA5).

Based on the input XML document, the print unit control unit 20 agenerates and outputs to the print unit 21 a control command using thecommand language of the print unit 21 that causes the print unit 21 toexecute the processes required to produce a receipt (step SA6). Thecontrol circuit of the print unit 21 controls the relevant mechanismsbased on the control command and produces a receipt (step SA7).

To produce a receipt in this embodiment of the disclosure, the tabletdevice 10 generates and sends an XML document containing the informationfor the receipt to the printer 11 (steps SB5, SB6 in FIG. 4), and theprinter 11 then produces (prints) the receipt based on the received XMLdocument (steps SA4 to SA7 in FIG. 4).

Depending on the XML document sent from the tablet device 10 to theprinter 11, encryption may or may not be required for communication.More specifically, when communicating or printing information related tothe customer's credit card or other personal information that should notbe leaked to third parties, the XML document must be specificallyencrypted to prevent data theft (leaking) during communication. However,if confidential information that should not leak out is not printed onthe receipt, there is no need to encrypt the XML document forcommunication, efficiency is improved by not using encryption, and thetotal processing time can be shortened.

As a result, the tablet device 10 and printer 11 according to thisembodiment of the disclosure communicate using a method appropriate tothe data being communicated as described below.

FIG. 5 is a block diagram showing the main functional configuration ofthe tablet device 10 and printer 11.

As shown in FIG. 5, the tablet device 10 and printer 11 open two logicalchannels for communicating data between the devices, a first logicalcommunication channel K1 (first communication channel) and a secondlogical communication channel K2 (second communication channel).

The first logical communication channel K1 and second logicalcommunication channel K2 are further described below.

The first logical communication channel K1 is a logical communicationchannel for carrying encrypted data when the XML document or other datais encrypted for communication. The browser execution unit 26 a andcommunication unit 20 b open the first logical communication channel K1as described below.

First, the browser execution unit 26 a and communication unit 20 b opena connection using the WebSocket protocol between the host-side firstdata processor 50 and device-side first data processor 51. The host-sidefirst data processor 50 and device-side first data processor 51 arefunction blocks for a virtual interface used for data communicationbased on the WebSocket protocol. While the first logical communicationchannel K1 is a communication channel based on the WebSocket protocol inthis embodiment, the Comet Protocol or other standard could be usedinstead.

The browser execution unit 26 a and communication unit 20 b thencommunicate over the opened connection, and generate and acquire ashared key used to encrypt and decrypt data carried on the first logicalcommunication channel K1. The shared key can be generated using theDiffie-Hellman key exchange or other method. The browser execution unit26 a then stores the shared key to a specific variable, for example,defined in the program rendering the host-side first data processor 50function, and renders the data encryption/decryption function using theshared key in the host-side first data processor 50. This process is aprocess of storing print data sent by the control device and received bythe printing device in encrypted form.

The communication unit 20 b likewise renders a dataencryption/decryption function using a shared key in the device-sidefirst data processor 51.

A first logical communication channel K1 is thus established between thehost-side first data processor 50 and device-side first data processor51, the XML document generated by the browser execution unit 26 a isthen encrypted by the host-side first data processor 50 using the sharedkey and output to the device-side first data processor 51 over the firstlogical communication channel K1, and is then decrypted by thedevice-side first data processor 51 using the shared key. Data flowingover the first logical communication channel K1 is thus data that isencrypted using a shared key.

The second logical communication channel K2 is a logical channelcarrying unencrypted data when the XML document or other data is notencrypted.

In this instance, the browser execution unit 26 a and communication unit20 b open the second logical communication channel K2, which is acommunication channel based on the HTTP protocol, for example, betweenthe host-side second data processor 53 and device-side second dataprocessor 54. When sending an XML document over the second logicalcommunication channel K2, the host-side second data processor 53 sendsthe XML document through the second logical communication channel K2 tothe device-side second data processor 54 using the HTTP protocol, forexample.

This embodiment thus opens two channels between the tablet device 10 andprinter 11, a first logical communication channel K1 that carriesencrypted data, and a second logical communication channel K2 thatcarries unencrypted data.

This embodiment can therefore transmit data using the method appropriateto the type of data, and the method of communicating data can be variedaccording to the type of data, by changing the channel through which thedata is communicated according to the type of data, such as whether thedata to be communicated contains personal information.

Operation of the tablet device 10 and printer 11 when sending andreceiving an XML document using the first logical communication channelK1 or the second logical communication channel K2 is described next.

FIG. 6 is a flow chart showing in further detail the process from whenthe tablet device 10 generates the XML document until the printer 11produces a receipt based on the XML document (that is, steps SB5 andSB6, and steps SA4 to SA7, in FIG. 4). In FIG. 6 column A shows theoperation of the tablet device 10, and column B shows the operation ofthe printer 11.

Using a function of the dedicated script, the browser execution unit 26a of the tablet device 10 generates an XML document containing theinformation required to produce a receipt in a specific format (stepSD1).

The browser execution unit 26 a then determines whether to send thegenerated XML document over the first logical communication channel K1or the second logical communication channel K2 (step SD2). The decisionof step SD2 is made as described below.

In one implementation the user can set whether to send data over thefirst logical communication channel K1 or the second logicalcommunication channel K2, and the browser execution unit 26 a decidesbased on the user setting whether to use the first logical communicationchannel K1 or second logical communication channel K2. In this instancethe user can appropriately determine whether or not to use encryptedcommunication based on knowledge of the information to be exchangedbetween the tablet device 10 and printer 11.

Alternatively, the browser execution unit 26 a could analyze the contentof the XML document by referencing the value of a certain flag in theXML document, for example, to determine if information that should beprotected from leaking is contained in the XML file and select the firstlogical communication channel K1 or second logical communication channelK2 accordingly. This implementation improves user convenience becausethere is no need for a setting made by the user, effectively suppressesencrypting data that does not require encryption, and can improveprocess efficiency.

The browser execution unit 26 a then sends the XML document to thecommunication unit 20 b of the printer 11 using the channel selected instep SD2 (step SD3). As described above, when the first logicalcommunication channel K1 is used, the XML document is encrypted usingthe shared key by the host-side first data processor 50, output over thefirst logical communication channel K1 to the device-side first dataprocessor 51, and then decrypted using the shared key by the device-sidefirst data processor 51. When the second logical communication channelK2 is used, the XML document is sent from the browser execution unit 26a to the communication unit 20 b over the second logical communicationchannel K2 using the HTTP protocol without encryption.

The data communication unit 55 of the communication unit 20 b of theprinter 11 then receives the transmitted XML file through thedevice-side first data processor 51 or device-side second data processor54 (step SE1), processes the data as needed, and outputs to the printunit control unit 20 a (step SE2).

Based on the input XML document, the print unit control unit 20 agenerates a control command in the command language of the print unit 21(step SE3). The control command generated here is a command group thatreflects print settings such as the print speed, print density, andmargins, and causes the print unit 21 to execute the processes relatedto producing a receipt. The function of generating control commandsbased on the XML document is rendered by a dedicated program (script)containing an algorithm with the appropriate function.

The print unit control unit 20 a then outputs the generated controlcommand to the print unit 21 (step SE4). The control circuit of theprint unit 21 controls the appropriate mechanisms based on the controlcommand and produces a receipt (step SE5).

As described using FIG. 6, the tablet device 10 in this embodiment ofthe disclosure changes the communication channel according to the typeof data when sending an XML document to produce a receipt, and thecommunication unit 20 b receives the XML document over either the firstlogical communication channel K1 or second logical communication channelK2 and processes the received XML document according to thecommunication channel that was used. Data can therefore be sent andreceived appropriately according to the type of data using two channels,a first logical communication channel K1 and a second logicalcommunication channel K2.

As described above, the control system 1 according to this embodiment ofthe disclosure includes a tablet device 10 that generates and sends datausing a browser function, and a printer 11 that can connect to thetablet device 10. The tablet device 10 transmits data using one of aplurality of channels that carry different types of data; thecommunication unit 20 b of the printer 11 receives the data through theselected channel and processes the data according to the selectedcommunication channel; and the print unit control unit 20 a functioningas a print unit records based on the data received by the communicationunit 20 b.

The tablet device 10 in this embodiment transmits over a firstcommunication channel or a second communication channel according to thetype of data, and the printer 11 receives the print data and printsafter processing the print data appropriately to the communicationchannel that was used. As a result, if the tablet device 10 and printer11 communicate over the first or second communication channel accordingto the type of print data, the printer 11 can execute a process andprint appropriately according to the type of print data.

This embodiment also enables data communication between the tabletdevice 10 and printer 11 using one of a plurality of communicationchannels according to the type of data, and can diversify the methodused for data communication between devices.

The tablet device 10 in this embodiment sends encrypted data (XMLdocument) through the first logical communication channel K1 to theprinter 11, the communication unit 20 b of the printer 11 decrypts thedata received through the first logical communication channel K1, andthe print unit control unit 20 a records based on the data decrypted bythe communication unit 20 b.

Data requiring encryption can thus be received through the first logicalcommunication channel K1, data not requiring encryption can be sent andreceived through a different channel, and the devices can easily switchbetween encrypting and not encrypting data for communication.

The browser execution unit 26 a of the tablet device 10 and thecommunication unit 20 b of the printer 11 in this embodiment determinethe encryption applied to data to be communicated over the first logicalcommunication channel K1 according to a specific rule. The browserexecution unit 26 a of the tablet device 10 then sends the data (XMLdocument) encrypted according to the determined encryption method overthe first logical communication channel K1 to the printer 11, and thecommunication unit 20 b of the printer 11 decrypts the data receivedthrough the first logical communication channel K1 using the determinedencryption method.

Data communicated over the first logical communication channel K1 canthus be reliably encrypted using a method enabling decryption on theprinter 11 side. The encryption method in this embodiment generates ashared key, but generating the shared key is not limited to using adigital certificate issued by an external authority. This implementationdoes not incur a licensing fee for a digital certificate to build andoperate the control system 1, and is therefore cost effective.

The tablet device 10 in this embodiment sends an encrypted markupdocument (XML document) for printing to the printer 11 through the firstlogical communication channel K1. The communication unit 20 b of theprinter 11 decrypts the XML document received through the first logicalcommunication channel K1, and outputs the decrypted XML document to theprint unit control unit 20 a. The print unit control unit 20 a thenconverts the XML document to control commands for the print unit 21,outputs the control commands to the print unit 21, and the print unit 21produces a receipt.

When sending a markup document for printing from the tablet device 10 tothe printer 11, this embodiment enables appropriately encrypting andthen transmitting the markup document as needed using the simple meansof changing the transmission channel to the first logical communicationchannel K1.

Embodiment 2

A second embodiment of the disclosure is described next.

FIG. 7 is a block diagram showing the functional configuration of thecommunication unit 60 (a function block corresponding to thecommunication unit 20 b in the first embodiment) in a printer 11according to this embodiment of the disclosure.

As shown in FIG. 7, the communication unit 60 according to thisembodiment of the disclosure has a communication control unit 61, afirst data processing unit 62 (first channel), and a second dataprocessing unit 63 (second channel).

The first data processing unit 62 is a processing unit with at least afunction of executing a process related to receiving encrypted dataafter decrypting the data by the same specific encryption method used toencrypt the data. The second data processing unit 63 is a processingunit with at least a function of executing a process for receiving datathat is not encrypted.

Operation of the communication unit 60 according to this embodiment ofthe disclosure when print data is received is described next.

Print data received from a host computer such as a tablet device 10according to the first embodiment of the disclosure is input to thecommunication control unit 61 of the communication unit 60. Thecommunication control unit 61 then determines if the input print data isencrypted data or unencrypted data. For example, a flag identifyingwhether or not the data is encrypted could be stored in a specific partof the print data, and the communication control unit 61 determine ifthe data is encrypted based on this flag.

If the print data is encrypted, the communication control unit 61outputs the print data to the data communication unit 55 through thefirst data processing unit 62 (first channel), but outputs the printdata through the second data processing unit 63 (second channel) to thedata communication unit 55 if the print data is not encrypted. Asdescribed in the first embodiment, the data communication unit 55processes the input data as required before outputting to the print unitcontrol unit 20 a.

The printer 11 according to this embodiment of the disclosure can printbased on the print data after executing a process dependent on the typeof print data by the simple means of communicating the print datathrough a first data processing unit 62 as a first channel or a seconddata processing unit 63 as a second channel according to the type ofprint data. More specifically, the printer 11 can execute an appropriateprocess according to the type of print data by a simple means.

The data process executed by the first data processing unit 62 as afirst channel in this embodiment is a decryption process that decryptsencrypted print data, and when the received print data is encrypteddata, the communication unit 60 passes the encrypted data through thefirst data processing unit 62 and decrypts the encrypted data.

This embodiment of the disclosure can thus print based on print datathat requires decrypting by first appropriately decrypting the encryptedprint data by passing it through the first data processing unit 62.

APPLICATIONS OF THE DISCLOSURE

The disclosure can be applied as described below.

The disclosure is described above using as examples of plural channels afirst logical communication channel K1 that carries encrypted data and asecond logical communication channel K2 that carries unencrypted data.

However, processes such as described below can also be executed byapplying the technical concept of the disclosure, that is, opening aplurality of communication channels for communicating different types ofdata between a printer and a control device that generates and sendsdata using a function of a browser. This enables achieving the effect ofdiversifying the methods of data communication according to the type ofdata, and communicating data by methods appropriate to the type of data.

Application 1

Plural communication channels for communicating data compressed withdifferent compression rates for communication are opened between thebrowser execution unit 26 a and communication unit 20 b. The appropriatecommunication channel is then appropriately selected and data iscommunicated based on the communication speed, current communicationtraffic, CPU power, and the load on the CPU. The data transmitted in acompressed form is then decompressed by the printer. This configurationenables applying data compression with the desirable compression rateand communicating data according to the actual system environment andoperating conditions.

Application 2

Plural communication channels for communicating data related to devicecontrol to a plurality of devices connected to the printer 11 are openedbetween the browser execution unit 26 a and communication unit 20 b. Thebrowser execution unit 26 a then changes the communication channel andtransmits data depending on the device to be controlled. By thuschanging the communication channel according to the device, control datacan be output to the appropriate device.

The disclosure being thus described, it will be obvious that thedisclosure can be varied in many ways.

For example, the control system 1 according to the disclosure isdescribed using a POS system as an example in the foregoing embodiments,but the disclosure is not limited to a POS system.

The function blocks shown in FIG. 2 can be achieved by the cooperationof hardware and software, and do not suggest a specific hardwareconfiguration.

Operations including the operations described in the flow charts shownin FIG. 4 and FIG. 6 can also be achieved by the devices running anappropriate program stored on an external storage medium.

Such variations are not to be regarded as a departure from the spiritand scope of the disclosure, and all such modifications as would beobvious to one skilled in the art are intended to be included within thescope of the following claims.

A printing device according to one aspect of the disclosure includes acommunication unit that has a first channel that executes a data processand a second channel different from the first channel, and communicatesprint data on the first channel or the second channel; and a print unitthat prints based on the print data communicated on the first channel orthe second channel of the communication unit.

By communicating print data through a first channel or second channeldepending on the type of print data, the printing device in this aspectof the disclosure can print based on the print data after executing aprocess appropriate to the type of print data. More specifically, theprinting device can execute an appropriate process by a simple meansaccording to the type of print data.

In a printing device according to another aspect of the disclosure, thedata process executed on the first channel is a decryption process thatdecrypts the encrypted print data; and the communication unitcommunicates the print data on the first channel when the received printdata is encrypted and decrypts the encrypted data.

By transmitting print data that requires decryption over the firstchannel, this aspect of the disclosure enables appropriately decryptingthe print data and then printing based on the decrypted print data.

Another aspect of the disclosure is a control system including: acontrol device having a browser execution unit that runs a web browser,and transmitting print data output by the browser execution unit on afirst communication channel or a second communication channel; and aprinting device having a communication unit that receives the print datatransmitted by the control device on the first communication channel orsecond communication channel, and executes a process appropriate to thefirst communication channel or second communication channel, and a printunit that prints based on the print data received by the communicationunit.

The control device in this aspect of the disclosure transmits over thefirst communication channel or second communication channel according tothe type of data, and the printing device receives the print data andthen prints after processing the received data appropriately to thecommunication channel. As a result, if the control device and printingdevice communicate over the first or second communication channelappropriately to the type of print data, the printing device can executea process corresponding to the type of print data and printappropriately.

Further preferably, the control device encrypts the print data andtransmits the encrypted print data on the first communication channel;and the printing device decrypts the print data transmitted on the firstcommunication channel.

By transmitting print data that requires encryption over the firstcommunication channel, and print data that does not require encryptionover the second communication channel, this aspect of the disclosureenables the control device and printing device to easily switch betweenencrypting data and not encrypting data for communication.

In a control system according to another aspect of the disclosure, thecontrol device and the printing device store encryption informationrelated to encrypting the print data; the control device encrypts theprint data based on the stored encryption information and transmits theencrypted print data on the first communication channel; and theprinting device decrypts the print data transmitted on the firstcommunication channel based on the stored encryption information.

This aspect of the disclosure enables appropriate encryption anddecryption of data passing through the first communication channel bythe control device and printing device.

In a control system according to another aspect of the disclosure, theprint unit of the printing device converts the decrypted print data to acontrol command that controls the print unit, and prints based on theconverted control command.

This aspect of the disclosure enables printing appropriately.

Another aspect of the disclosure is a control method of a controlsystem, the control method including steps of: a control devicetransmitting print data to a printing device on a first communicationchannel that performs a data process on the print data or a secondcommunication channel that performs a data process different from thedata process performed on the first communication channel; and theprinting device printing based on the print data transmitted on thefirst communication channel or the second communication channel.

By communicating print data through a first channel or second channeldepending on the type of print data, the control method according tothis aspect of the disclosure enables the printing device to print basedon the print data after executing a process appropriate to the type ofprint data. More specifically, the printing device can execute anappropriate process by a simple means according to the type of printdata.

Another aspect of the disclosure is a program that causes a printingdevice to receive print data over a first communication channel thatprocesses the received print data or a second communication channeldifferent from the first communication channel, and to print based onthe print data received over the first communication channel or thesecond communication channel.

By the simple means of communicating over a first communication channelor a second communication channel according to the type of print data,the program according to this aspect of the disclosure enables theprinting device to process the received data appropriately to the typeof print data and then print based on the print data. More specifically,the printing device can easily execute a process appropriate to the typeof print data.

Another aspect of the disclosure is a method of controlling a controlsystem having a printing device and a control device that cancommunicate with the printing device, wherein the control devicetransmits print data output by a browser execution unit that runs a webbrowser through a first communication channel or a second communicationchannel, and the printing device receives the print data sent by thecontrol device through the first communication channel or secondcommunication channel, processes the data as required according to thecommunication channel that was used, and prints based on the receivedprint data.

By the simple means of communicating through a first channel or secondchannel depending on the type of print data, the printing device in thisaspect of the disclosure can print based on the print data afterexecuting a process appropriate to the type of print data. Morespecifically, the printing device can execute an appropriate process bya simple means based on the type of print data.

Other objects and attainments together with a fuller understanding ofthe disclosure will become apparent and appreciated by referring to thefollowing description and claims taken in conjunction with theaccompanying drawings.

What is claimed is:
 1. A control system comprising: a control devicethat runs a web browser, said control device encrypting select printdata output by the browser, not encrypting other print data output bythe browser, transmitting the encrypted print data on a firsttransmission channel, and transmitting the non-encrypted print data on asecond transmission channel; and a printing device including a receiverthat receives the encrypted print data and the non-encrypted print datatransmitted by the control device on the first transmission channel andthe second transmission channel, respectively, wherein said receiverincludes a first reception channel and a second reception channeldifferent from the first reception channel, the received encrypted printdata is directed to the first reception channel and the receivednon-encrypted data is directed to the second reception channel, saidfirst reception channel decrypts the received encrypted data, and saidreceiver communicates the decrypted print data from the first receptionchannel and the non-encrypted data from the second reception channel;and a print assembly that prints based on the decrypted print datacommunicated from the first channel and the non-encrypted print datacommunicated from the second channel of the receiver; wherein prior totransmitting the encrypted print data and the non-encrypted print data,the control system adds a flag indicator to the encrypted print data andto the non-encrypted print data identifying it as encrypted print dataor non-encrypted print data, respectfully.
 2. The control systemdescribed in claim 1, wherein the control device and the printing devicestore encryption information related to encryption of the print data;the control device encrypts the select print data based on the storedencryption information; and the printing device decrypts the receivedencrypted print data in the first reception channel based on the storedencryption information.
 3. The control system described in claim 1,wherein the print assembly of the printing device converts the decryptedprint data to a control command to control the print assembly, andprints based on the converted control command.
 4. The control systemdescribed in claim 1, wherein the control device compresses theencrypted print data at a first compression rate and transmits thecompressed encrypted print data on the first transmission channel. 5.The control system described in claim 4, wherein the control devicecompresses non-encrypted print data at a second compression rate that isdifferent from the first compression rate, and transmits the compressednon-encrypted print data on the second transmission channel.
 6. Thecontrol system described in claim 5, wherein: the printing device isconnected to a second device different from the control device; and thecontrol device transmits data for the second device connected to theprinting device on the second transmission channel.
 7. The controlsystem described in claim 1, wherein: the printing device is connectedto a host device via the control device; and the control devicetransmits data from the host device to the printing device on the firsttransmission channel.
 8. The control system described in claim 1,wherein: the control device is a POS terminal having a display thatdisplays product information; and the printing device produces a receiptbased on information processed by the POS terminal.
 9. The controlsystem described in claim 1, wherein the receiver inspects the flagindicator of the received encrypted print data and the receivednon-encrypted print data, and directs the received encrypted print dataand non-encrypted print data to the appropriate one of the firstreception channel and second reception channel based on the flagindicator.
 10. The control system described in claim 1, wherein: saidencrypted print data and said non-encrypted print data are each printjobs controlling printing by said printing device; said flag is embeddedwithin the encrypted print data and within the non-encrypted print data;if the flag identifies print data received by the printing device asencrypted print data, then the receiver directs the received print datato the first reception channel; and if the flag identifies print datareceived by the printing device as non-encrypted print data, then thereceiver directs the received print data to the second receptionchannel.
 11. A control method of a control system, comprising: a controldevice transmitting print data via a first transmission channel and asecond transmission channel, said first transmission channel encryptingthe print data and transmitting the encrypted print data, said secondtransmission channel not encrypting the print data and transmitting thenon-encrypted print data; and a printing device printing based on theencrypted print data transmitted on the first transmission channel orthe non-encrypted print data transmitted on the second transmissionchannel; wherein: transmitted encrypted print data and transmittednon-encrypted print data include a flag indicator identifying it asencrypted print data or non-encrypted print data, respectfully; and theprinting device distinguishes between received encrypted print data andreceived non-encrypted print data based on their flag indicator.
 12. Thecontrol method of the control system described in claim 11, wherein theprinting device has a first reception channel receiving the encryptedprint data transmitted on the first transmission channel and decryptingthe received encrypted print data, and prints based on the decryptedprint data.
 13. The control method of the control system described inclaim 12, wherein the printing device has a second reception channelreceiving the non-encrypted print data transmitted on the secondtransmission channel; and prints based on the received non-encryptedprint data without decrypting print data transmitted on the secondtransmission channel.
 14. The control method of the control systemdescribed in claim 11, wherein: the control device compresses theencrypted print data at a first compression rate, and transmitscompressed encrypted print data on the first transmission channel. 15.The control method of the control system described in claim 14, wherein:the control device compresses non-encrypted print data at a secondcompression rate that is different from the first compression rate, andtransmits the compressed non-encrypted print data on the secondtransmission channel.
 16. The control method described in claim 11,wherein: the print data transmitted by the first transmission channeland the second transmission channel are both print jobs; the firsttransmission channel embeds the flag into its transmitted print dataidentifying it as encrypted print data; the second transmission channelembeds the flag into its transmitted print data identifying it asnon-encrypted print data; if the flag embedded within printing datareceived by the printing device identifies the received printing data asencrypted print data, then the printing device decrypts the receivedprint data prior to printing based on the received print data; if theflag embedded within printing data received by the printing deviceidentifies the received printing data as non-encrypted print data, thenthe printing device does not decrypts the received print data prior toprinting based on the received print data.